iT邦幫忙

2026 iThome 鐵人賽

DAY 28
0

在前面的文章中,探討了看不懂 AI 程式碼時的拆解方法,也總結了 Claude 常見的陷阱。當 AI 幫忙快速生出各種功能後,最關鍵的一步就是:自己該怎麼進行審查與查證?

如果把 AI 當作寫程式的「生產機器」,那自己就是最後一道「品管防線」。今天想分享在這 30 天中,建立的查證步驟與 Code Review 流程。

一、 為什麼需要自己做 Code Review?

如果直接把 AI 產出的程式碼上線或部署,常會隱藏以下風險:

  1. 隱性 Bug:如果沒考慮到邊界條件,當資料庫為空或帶入特殊字元時直接報錯。
  2. 資安漏洞:雖然 AI 知道要用 Prepared Statement,但有時會不小心在某些動態拼裝 SQL 的地方留下隱患。
  3. 規格不符:AI 有時候會「自由發揮」,多寫了不需要的欄位或邏輯。

二、 我的 Code Review 步驟與查證流程

每當 Claude 產出一個新模組時,會按照以下步驟進行審查:

  1. 安全與邏輯防線審查
    在看細部語法前,先檢視核心架構與資安:
    • 資安防護:所有的使用者輸入(POST/GET)是否有經過過濾或跳脫?SQL 查詢是否全部使用 PDO 綁定參數?
    • 例外處理:是否有加上 try...catch? 當資料庫連線失敗或交易衝突時,系統是否會正常 Rollback,而不是讓網站直接崩潰?
  2. 人工逐行走查
    不要只看整體功能有沒有跑出來,要親自把程式碼從頭到尾讀過一遍:
    • 檢查變數命名是否清楚、有沒有宣告了卻沒用到的變數。
    • 確認迴圈的終止條件是否正確,避免陷入無窮迴圈。
  3. 極端與邊界測試
    不要只測正常狀況,要想辦法去「攻擊」自己的程式:
    • 空值測試:如果送出空白表單會發生什麼事?
    • 重複提交測試:連續快速點擊「借書」按鈕兩次會怎樣?
    • 權限測試:未登入的使用者直接手動輸入網址列,系統有沒有確實攔截並重新導向?
  4. 向 AI 進行「反向交叉審查」
    當自己看完一遍後,可以把整段 Code 丟回給 Claude,並下達這樣的 Prompt 進行交叉比對:

    請扮演資深的資安與 PHP Code Review 專家,嚴格審查以下這段程式碼。請幫我找出:
    任何潛在的資安漏洞(如 SQLi、XSS、CSRF)。
    邏輯上的盲點或未處理的 Exception。
    效能優化建議。

透過 AI 審查抓出自己漏掉的盲點。


經過這 30 天,AI 可以幫忙寫出 80% 的程式碼,但剩下 20% 的品質控制、資安把關與架構整合,必須由自己負責。

今天分享在 AI 協同開發中的檢查流程:從安全與邏輯審查、逐行人工走查、極端邊界測試,到最後利用 AI 進行交叉審查。有了嚴謹的 Code Review 習慣,就能在 AI 高效產能的同時,確保系統的穩固與安全。


上一篇
Day 27 Claude 犯過的錯誤
下一篇
Day 29 還沒做完的功能
系列文
從零打造圖書管理系統:WSL2 × MySQL × Claude Code 的整合實作 共 30 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言